1. Field of the Invention
The present invention relates to animation of 3-Dimensional (3D) graphics models, and more particularly, to apparatuses for compression and reconstruction of an animation path, which is used in animation, using linear approximation, methods of compression and reconstruction used in the apparatuses, and data formats for the apparatuses and methods.
2. Description of the Related Art
In 3D computer animation, interpolators are used to express motion and rotation in a space, model morphing, color changes, etc. of a 3D model object.
FIG. 1 is a diagram for explaining an animation path in ordinary 3D animation, and the vertical axis represents key values (KEY_VALUE) and the horizontal axis represents keys (KEY).
As shown in FIG. 1, the animation path 20 expresses the animation trace of a 3D model 10. The path 20 of animation information is a 2-dimensional curve varying with respect to time, as shown in FIG. 1. The animation path may be represented by a variety of methods, which are explained in Chapter 9 of A. K. Jain, “Fundamentals of Digital Image Processing”, published by Prentice Hall in 1989.
In an expression using an interpolator, the animation path 20 having a curve shape, as shown in FIG. 1, can be represented by definite straight lines using a plurality of segments. Essential information in this expression includes break points or vertices of each definite straight line segment. Here, the break points or vertices are expressed as points on the animation path 20 of FIG. 1. Using linear interpolation, the original curve can be reconstructed from the break points.
FIG. 2 is an example of an expression (Scalar Interpolator) of an animation path used in the Virtual Reality Modeling Language (VRML) or MPEG-4. Information to be processed includes keys and key values, and linear interpolation is performed using given information.
Interpolators can be roughly divided into 6 kinds: scalar interpolators, position interpolators, coordinate interpolators, orientation interpolators, normal interpolators, and color interpolators. Among them, scalar interpolators can be expressed as shown in FIG. 2. The characteristics and functions of the 6 kinds of interpolators are shown in the following table 1, and all the interpolators are sets of given keys and key values corresponding to the keys.
TABLE 1KindsCharacteristicsFunctionsScalar InterpolatorLinear interpolation ofExpression of width,scalar change amountradius, solidity, etc.Position InterpolatorLiner interpolation on 3DParallel movementcoordinatesin a 3D spaceOrientation InterpolatorSpherical LinearRotation in a 3Dinterpolation of 3D axesspaceand rotation amountCoordinate InterpolatorLiner interpolation of 3D3D morphingmodel coordinate changeamountNormal InterpolatorSpherical LinearExpression of 3Dinterpolation of 3Dnormal vectornormal coordinateschangeColor InterpolatorLinear interpolation ofExpression of colorcolor tone informationtone change amount
FIG. 3 is a schematic diagram for explaining a 3D animation data format, and shows an encoder 30, a decoder 40, and a 3D animation file format 50. Here, the 3D animation file format 50 output from the encoder 30 to the decoder 40 is formed with model data, animation data, attributes, video/texture, and sound.
Referring to FIG. 3, an interpolator corresponds to animation data which efficiently expresses a 3D animation path. 3D animation data expressed by the VRML or MPEG-4 is formed with information shown in FIG. 3. While standardized compression technologies are provided for audio, video, and 3D models, only expression-oriented general-purpose compression technologies are provided for interpolator for determining an animation path. In animation excluding audio/video, the amount of data for animation paths together with 3D models take most of the needed amount of data.
Therefore, together with technology for compression of 3D models, technology for compression of animation paths is essential. Though the MPEG-4 Binary Format for Scene (BIFS) provides a basic quantization/compression method for animation, the method is not a technology dedicated for interpolators but a general-purpose compression technology and has poor compression performance. This is disclosed in Euee S. Jang “3D Animation Coding: its History and Framework”, proceedings of the International Conference on multimedia and Expo held in New York city in 2000.
FIGS. 4a and 4b are block diagrams of prior art animation path compression and reconstruction apparatuses, respectively. The prior art compression apparatus of FIG. 4a is formed with a scalar quantization unit 60, and the prior art reconstruction apparatus of FIG. 4b is formed with a scalar dequantization unit 70. An original animation path is input in the form of (key, key_value) through an input terminal IN1 to the scalar quantization unit 60 of FIG. 4a and is scalar quantized. An encoded bit stream which is the result of scalar quantization is output through an output terminal OUT1. The scalar dequantization unit 70 of FIG. 4b receives the encoded bit stream through an input terminal IN2 and outputs data in the form of a reconstructed animation path (key, key_value) through an output terminal OUT2.
The interpolator compression in the prior art MPEG-4 BIFS needs scalar quantization as shown in FIG. 4a. The prior art compression process of FIG. 4a is applied not only to interpolators but to all elements that need compression in the BIFS. In the inverse of the compression order, an animation path is reconstructed through the scalar dequantization unit 70, using the encoded bit stream input to the prior art reconstruction apparatus of FIG. 4b. In the apparatuses of FIGS. 4a and 4b, keys and key values of interpolators are compressed in a uniform way, without considering the characteristics of each kind, so compression cannot be maximized.